using Sandia.MVCFramework.ViewManager;
using System;
using System.Collections.Generic;
using System.Text;

namespace Sandia.MVCFramework.Request
{
    /// <summary>
    /// A request parameter used to carry an IViewManagerFactory.
    /// </summary>
    public class ViewManagerFactoryRequestParameter : AbstractStandardRequestParameter
    {
        /// <summary>
        /// Human readable name of the parameter
        /// </summary>
        public static string NAME = "ViewManagerFactoryRequestParameter";

        /// <summary>
        /// Initializes name of the request parameter
        /// </summary>
        /// <returns>Name of the request parameter</returns>
        protected override string initName()
        {
            return ViewManagerFactoryRequestParameter.NAME;
        }

        /// <summary>
        /// Constructor for ViewManagerFactoryRequestParameter.
        /// </summary>
        /// <param name="viewManagerFactory">
        /// A factory used to create a new IViewManager.
        /// </param>
        public ViewManagerFactoryRequestParameter(
            IViewManagerFactory viewManagerFactory)
        {
            this.Data = viewManagerFactory;
        }
    }
}
